{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 路透社数据集\n",
    "#### multiclass classification"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "from tensorflow.keras.datasets import reuters\n",
    "(train_data, train_labels), (test_data,  test_labels) = reuters.load_data(\n",
    "    num_words=10000)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "训练数据数量: 8982\n",
      "测试数据数量: 2246\n",
      "训练标签数量: 8982\n",
      "测试标签数量: 2246\n",
      "训练数据第一个样本的长度: 87\n",
      "训练数据第一个样本: [1, 2, 2, 8, 43, 10, 447, 5, 25, 207, 270, 5, 3095, 111, 16, 369, 186, 90, 67, 7, 89, 5, 19, 102, 6, 19, 124, 15, 90, 67, 84, 22, 482, 26, 7, 48, 4, 49, 8, 864, 39, 209, 154, 6, 151, 6, 83, 11, 15, 22, 155, 11, 15, 7, 48, 9, 4579, 1005, 504, 6, 258, 6, 272, 11, 15, 22, 134, 44, 11, 15, 16, 8, 197, 1245, 90, 67, 52, 29, 209, 30, 32, 132, 6, 109, 15, 17, 12]\n",
      "训练标签的类别数: 46\n"
     ]
    }
   ],
   "source": [
    "print(\"训练数据数量:\", len(train_data))\n",
    "print(\"测试数据数量:\", len(test_data))\n",
    "print(\"训练标签数量:\", len(train_labels))\n",
    "print(\"测试标签数量:\", len(test_labels))\n",
    "print(\"训练数据第一个样本的长度:\", len(train_data[0]))\n",
    "print(\"训练数据第一个样本:\", train_data[0])\n",
    "print(\"训练标签的类别数:\", len(set(train_labels)))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "解码后的第一个训练样本：\n",
      "? ? ? said as a result of its december acquisition of space co it expects earnings per share in 1987 of 1 15 to 1 30 dlrs per share up from 70 cts in 1986 the company said pretax net should rise to nine to 10 mln dlrs from six mln dlrs in 1986 and rental operation revenues to 19 to 22 mln dlrs from 12 5 mln dlrs it said cash flow per share this year should be 2 50 to three dlrs reuter 3\n"
     ]
    }
   ],
   "source": [
    "# 将样本解码为单词\n",
    "word_index = reuters.get_word_index()\n",
    "reverse_word_index = dict([(value, key) for (key, value) in word_index.items()])#将字典的键和值交换，将整数索引映射为单词\n",
    "\n",
    "def decode_newswire(text):\n",
    "    # 路透社数据集的单词索引偏移了3\n",
    "    return ' '.join([reverse_word_index.get(i - 3, '?') for i in text])\n",
    "\n",
    "# 示例：解码第一个训练样本\n",
    "decoded_newswire = decode_newswire(train_data[0])\n",
    "print(\"解码后的第一个训练样本：\")\n",
    "print(decoded_newswire)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "def vectorize_sequences(sequences, dimension=10000):#将整数序列转换为多热向量\n",
    "    results = np.zeros((len(sequences), dimension))\n",
    "    for i, sequence in enumerate(sequences):\n",
    "        results[i, sequence] = 1.0#将对应位置设为1，表示该单词在评论中出现\n",
    "    return results\n",
    "\n",
    "x_train = vectorize_sequences(train_data)#将训练数据转换为多热向量\n",
    "x_test = vectorize_sequences(test_data)#将测试数据转换为多热向量\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "from tensorflow.keras.utils import to_categorical\n",
    "\n",
    "\n",
    "y_train = to_categorical(train_labels)\n",
    "y_test = to_categorical(test_labels)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 输出类别从2个变成46个,输出空间维度增加"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m2s\u001b[0m 39ms/step - accuracy: 0.3434 - loss: 3.3654 - val_accuracy: 0.5865 - val_loss: 2.0393\n",
      "Epoch 2/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.6335 - loss: 1.8265 - val_accuracy: 0.6761 - val_loss: 1.5041\n",
      "Epoch 3/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 22ms/step - accuracy: 0.7030 - loss: 1.3676 - val_accuracy: 0.6895 - val_loss: 1.3594\n",
      "Epoch 4/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.7663 - loss: 1.0937 - val_accuracy: 0.7346 - val_loss: 1.1686\n",
      "Epoch 5/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 17ms/step - accuracy: 0.8137 - loss: 0.8889 - val_accuracy: 0.7679 - val_loss: 1.0760\n",
      "Epoch 6/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.8414 - loss: 0.7463 - val_accuracy: 0.7362 - val_loss: 1.1155\n",
      "Epoch 7/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.8584 - loss: 0.6545 - val_accuracy: 0.7730 - val_loss: 1.0230\n",
      "Epoch 8/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.8927 - loss: 0.5360 - val_accuracy: 0.7908 - val_loss: 0.9617\n",
      "Epoch 9/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9172 - loss: 0.4440 - val_accuracy: 0.7935 - val_loss: 0.9210\n",
      "Epoch 10/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9265 - loss: 0.3809 - val_accuracy: 0.8058 - val_loss: 0.9000\n",
      "Epoch 11/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9337 - loss: 0.3296 - val_accuracy: 0.7986 - val_loss: 0.9158\n",
      "Epoch 12/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9389 - loss: 0.2931 - val_accuracy: 0.8008 - val_loss: 0.9134\n",
      "Epoch 13/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 13ms/step - accuracy: 0.9422 - loss: 0.2695 - val_accuracy: 0.8008 - val_loss: 0.9285\n",
      "Epoch 14/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9540 - loss: 0.2194 - val_accuracy: 0.7958 - val_loss: 0.9643\n",
      "Epoch 15/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9517 - loss: 0.2028 - val_accuracy: 0.7935 - val_loss: 0.9632\n",
      "Epoch 16/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 19ms/step - accuracy: 0.9565 - loss: 0.1786 - val_accuracy: 0.8019 - val_loss: 0.9314\n",
      "Epoch 17/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9617 - loss: 0.1564 - val_accuracy: 0.7713 - val_loss: 1.1430\n",
      "Epoch 18/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9532 - loss: 0.1728 - val_accuracy: 0.8063 - val_loss: 0.9281\n",
      "Epoch 19/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 18ms/step - accuracy: 0.9616 - loss: 0.1332 - val_accuracy: 0.7997 - val_loss: 0.9716\n",
      "Epoch 20/20\n",
      "\u001b[1m15/15\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9675 - loss: 0.1289 - val_accuracy: 0.8002 - val_loss: 0.9848\n"
     ]
    }
   ],
   "source": [
    "from tensorflow import keras\n",
    "from tensorflow.keras import layers\n",
    "\n",
    "model = keras.Sequential([\n",
    "    layers.Dense(64, activation=\"relu\"),\n",
    "    layers.Dense(64, activation=\"relu\"),\n",
    "    layers.Dense(46, activation=\"softmax\")#46个输出类别，softmax函数将输出转换为概率\n",
    "])\n",
    "model.compile(optimizer=\"rmsprop\",\n",
    "             loss=\"categorical_crossentropy\", #分类交叉熵损失函数\n",
    "             metrics=[\"accuracy\"])#准确率，用于监控训练过程\n",
    "\n",
    "history = model.fit(x_train,\n",
    "                   y_train,\n",
    "                   epochs=20,\n",
    "                   batch_size=512,\n",
    "                   validation_split=0.2)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 19ms/step - accuracy: 0.9671 - loss: 0.0857 - val_accuracy: 0.9310 - val_loss: 0.2911\n",
      "Epoch 2/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 17ms/step - accuracy: 0.9620 - loss: 0.0917 - val_accuracy: 0.9270 - val_loss: 0.3029\n",
      "Epoch 3/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9626 - loss: 0.0884 - val_accuracy: 0.9330 - val_loss: 0.2869\n",
      "Epoch 4/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9580 - loss: 0.0982 - val_accuracy: 0.9350 - val_loss: 0.3020\n",
      "Epoch 5/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9618 - loss: 0.0943 - val_accuracy: 0.9340 - val_loss: 0.3048\n",
      "Epoch 6/6\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9643 - loss: 0.0863 - val_accuracy: 0.9320 - val_loss: 0.3052\n"
     ]
    }
   ],
   "source": [
    "x_val = x_train[:1000]  # 取前1000个样本作为验证集\n",
    "partial_x_train = x_train[1000:]  # 剩余样本作为训练集\n",
    "\n",
    "y_val = y_train[:1000]  # 验证集标签\n",
    "partial_y_train = y_train[1000:]  # 训练集标签\n",
    "\n",
    "history = model.fit(partial_x_train,\n",
    "                   partial_y_train,\n",
    "                   epochs=6,\n",
    "                   batch_size=512,\n",
    "                   validation_data=(x_val, y_val))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/IAAAGJCAYAAAApGAgTAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAglhJREFUeJzt3Qm8TPX/x/GPfcm+L9llLRQSpY0S5adSSYpUKkkkLUpR/YpSliJKoU1aLP82JGknRaIsIVmzlj37/B/v7/zOmLl37nXnuvfOzL2v5+Nx3DszZ+acOXfMOZ/v9/P9fLP5fD6fAQAAAACAuJA92jsAAAAAAABSjkAeAAAAAIA4QiAPAAAAAEAcIZAHAAAAACCOEMgDAAAAABBHCOQBAAAAAIgjBPIAAAAAAMQRAnkAAAAAAOIIgTwAAAAAAHGEQB4ws5tvvtkqV66cqucOHDjQsmXLZpnZn3/+6d7jhAkTMnS7X375pduufkb6t0qvfda2tQ8ZTe9D70fvCwAyO87LyeO8HP3zMhBtBPKIafrCT8kSfEIBTtb333/vLgR37twZ7V0BgJjCeRnRwHkZSCxnmPuAmPHmm2+G3H7jjTds1qxZie6vXbv2SW1n7NixduzYsVQ9t3///vbQQw+d1PaRMX+rSC4YHn/8cdfCX6RIkZDHVqxYYdmz0wYKIGvivIyEOC8D0UEgj5h24403htyeN2+eu2BIeH9C+/fvt/z586d4O7ly5Ur1PubMmdMtyBgn87dKC3ny5Inq9gEgmjgvIyHOy/Fh3759dsopp0R7N5CGaL5C3Lvwwgvt9NNPtwULFtj555/vLhQefvhh99j//d//2eWXX27lypVzX/TVqlWzJ5980o4ePRryGgnHd3njuJ577jl75ZVX3PP0/MaNG9uPP/54wrF4un333XfbtGnT3L7puXXr1rUZM2Yk2n+lHzZq1Mjy5s3rtvPyyy+neHzfN998Y9dee61VrFjRbaNChQp277332r///pvo/RUoUMA2btxoV155pfu9ZMmS1rdv30THQmlrWr9w4cKu1btLly4pSmX76aef3D6//vrriR6bOXOme+zjjz92t9euXWt33XWX1axZ0/Lly2fFixd37yMl47/DjcVL6T4vXrzYrVe1alV3vMuUKWO33HKL7dixI7COjv3999/vfq9SpUogTdTbt3Bj8f744w+3/8WKFXOfv3POOcc++eSTsOMK33vvPXvqqafs1FNPdfvQokULW7VqlaXWSy+95D5b+vvrc96jR49E733lypXWvn179361TW37+uuvt127dgXW0YX4eeed546fPh/623j/jwAgEpyXOS9nhfNyJMdM712fA+2rPhfaVufOnW379u2BdQ4cOODea40aNdx+lC1b1q6++mpbvXp1yP4mHLYSrvaA9/nSc9u0aWMFCxa0Tp06RfQZleXLl9t1113nPpt6j3qvjzzyiHtszpw5brtTp05N9LyJEye6x+bOnXvC44jUo7kSmYK+8Fu3bu2CE/UKlC5d2t2vLzV9kfXp08f9/OKLL+yxxx6z3bt325AhQ074uvoi2rNnj91xxx3uC+nZZ591X6o6QZyoBfrbb7+1KVOmuC95fYG+8MILLphat26d+7KXn3/+2S677DL3Za2UMZ28n3jiCfeFmRLvv/++6+Xo3r27e8358+fbiy++aBs2bHCPBdNrt2rVypo0aeIuhD7//HN7/vnn3UWKni8+n8/atWvn9v3OO+90qZH6gtYJ+ER00aMTsU6ICdd/9913rWjRom77oosupcnp76WTmU5Co0ePdhd/S5cujajXJpJ9VrCqv13Xrl3dxcJvv/3mLgj1U71K+hvr7/v777/bO++8Y8OGDbMSJUq45yb1N9myZYs1a9bM/R3uuece93fQRdN//vMf++CDD+yqq64KWX/w4MEuBVAXawqk9ZnSyfWHH36wSOmEr89Ny5Yt3d9Q6YU6jjq+3333nfuMHjp0yB33gwcPWs+ePd371oWjLt50YaGLLL3/K664wurVq+c+fzqx6yJGrwEAqcF5mfNyZj8vp/SY7d2715o3b27Lli1zjRRnnXWWC+A//PBD97nQ+9FnQefh2bNnu9fr1auX+5zr+Pz666/uMxGpI0eOuL+vGun1+fL2J6WfUTWyaL/1/+r22293jRBqGPjoo49cw4fepxoB3n777UTHVPdpn5s2bRrxfiMCPiCO9OjRw5fwY3vBBRe4+8aMGZNo/f379ye674477vDlz5/fd+DAgcB9Xbp08VWqVClwe82aNe41ixcv7vv7778D9//f//2fu/+jjz4K3DdgwIBE+6TbuXPn9q1atSpw3y+//OLuf/HFFwP3tW3b1u3Lxo0bA/etXLnSlzNnzkSvGU649zdo0CBftmzZ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of72229t9erV1q5dO9dTq0C/cePG9vnnnyebWq/XffXVV+2qq65yU/NpTvQPP/wwydR6LwV+5syZVrt2bbedyy67LKTh4ciRI3bPPfe49YoXL24PPvigdenSxa688sqIjsHo0aOtWrVqrjGhZs2aIb3ParxQRkLFihXd+y9Xrpzbpuell15y70XTwul4XKMWlzimLIrbb7/dRo0a5XroO3funOogXq+hz4GOjaa0mz9/fpLrHj582J544gn3d9D69evXtxkzZiS5/uDBg93npbf+UwS58MIL3f3By5133pmq/QcAIN4QyANABvvmm9B0+nDBvGYG03oZ7aGHHnKB07Jly6xevXq2d+9ea9Omjc2ePdt+/vlnF2C3bdvW1q1bl+zrPP7443bddde5Xl89v1OnTvb3338nuf7+/ftdMKnA+uuvv3av37dv38DjzzzzjOs9Hj9+vH333Xe2e/dumzZtWkTvberUqdarVy+777777Ndff7U77rjD9ULPmTPHPT558mQbNmyYvfzyy7Zy5Ur3+meccYZ77KeffnJBvQJQZTEo8FRqerxThXq9FzW0BC+RUHZHnz593NCMhQsXusC8VatWbq76cPr37++O8Ysvvui2r+BbjT76fIUbtqF19VkMp1u3bq7Bx1ueffbZiPYdAIC45UuFdevW+davXx+4/cMPP/h69erle/nll32Zwa5du9Qn5n4CQDj//vuvb+nSpe5npCZOVKh+4kXrpZfx48f7ChcuHLg9Z84c9703bdq0Ez63bt26vhdffDFwu1KlSr5hw4YFbut1+vfvH7i9d+9ed9/06dNDtvXPP/8E9kW3V61aFXjOqFGjfKVLlw7c1u9DhgwJ3D5y5IivYsWKvnbt2qX4PTZr1szXrVu3kHWuvfZaX5s2bdzvzz//vK9GjRq+Q4cOJXqtyZMn+woVKuTbvXu3L1qfq7Q8N61evdpXr149X7Zs2XzZs2d3P73ftUTi7LPP9vXo0SNw++jRo75y5cr5Bg0aFHb9smXL+kaOHBly39VXX+3r1KlTyH179uzxnXbaab5Zs2b5LrjgAnedESzcfZHgXA8AiDWRnJtS1SN/ww03BHowNm/e7CrcKo3ukUcecb0VAICklS2btuulpUaNGoXcVo+8esaV8q60dqW9q7f+RD3ywT2oSuEuVKhQkj20ohR8pVp7ypYtG1hf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wF988cXWtGlTd78KEamVP6U0pl496l5BHI9uq8c/JTQVjXrgvcBdQbz3Gglf03ssIVXSffzxx1O83wAAxDNl0QEAgPiVqjHy11xzjatC+9NPP7keeY/mfh02bJhlFBU6mjRpkivYczKprcoIUPqCt2iIAAAAAAAAmaZHXsqUKeOWDRs2uNuauzWpSvNJKVGihOXIkcO2bNkScr9u67WT89xzz7lAXtPP1KtXL2S/vNcoW7ZsyGtqSpxw8uTJ4xYAALICDWNLbr54ZcsBAIBM1iOvgnRPPPGEG3uuIjlaNP/rk08+6R6LZB5YTR83e/bskNfWbS9dPxxVpde2NE9to0aNQh5TgSAF88GvqTHvql6f3GsCAJBVKJNtypQpgUUzyKjArBrAX3nllWjvHgAASI8eeU1b89prr7kecc3RLt9++60NHDjQVdx96qmnUvxamnquS5cuLiBXj/7w4cNt37591rVrV/e4KtGXL1/ejWOXZ555xo3RnzhxolWuXDkw7r1AgQJuUQ9D79697b///a+bN16B/aOPPurG0VPcBwBO3oUXXugynPR9Lfou1veulqTou1nB48l+D6fV6yRH5zIVdF20aJFlVu3atQs7bE6z0Ciov/XWW6OyXwAAIB0D+ddff91effVV+89//hO4T+ntCrjvuuuuiAL5Dh062LZt21xwrqBcF4fqafeK1WksvlIAPaNHj3bV7nXBkbBwjy6+5IEHHnCNAbfffrvt3LnTzjvvPPeaTBEFICtr27atm+VD34cJffPNN25e9l9++SVkuFJK/Pjjj4mmL0uvYPqvv/5yU44ifZxzzjnu3AkAADJhIP/3339brVq1Et2v+/RYpO6++263hPPll1+G3P7zzz9T1GOj1H8tAAA/9bK2b9/e1TZRXZNg48ePd5lRkQbxUrJkScsoJ6qfgtT7999/7YUXXnCN8gAAIBOOka9fv76NHDky0f26LzUXgQAQ73w+s337orNo2ylxxRVXuKB7woQJIffv3bvX3n//fRfo79ixwzp27OiCufz589sZZ5xh77zzTrKvq9R6L81eVq5c6Xr3lQVVp04dmzVrVtipQ2vUqOG2UbVqVTcEStkCov3TlKDKDlDDrBZvn/W7euo9S5YscdOg5suXz4oXL+56k/V+PDfffLNLw1eBVI3/1jo9evQIbCuSujBq/FBhVC9zzKMs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AnkASCX1wJctW9ZKlSplhw8fjvbuIM4pnT69e+KDXX755W4RjYt/5513rG/fvrZgwQI7evRohu0HAACIHIE8AJwkBV8ZGYABaUUV6l977TWbPHmylStXzqXbjxo1Ktq7BQAAToBAHgCALGTz5s02YcIEF8CrJ/66666zgwcPulR7Ct0BABAfqFoPAEAWobHxNWvWtMWLF9vw4cNt06ZN9uKLL0Z7twAAQIQI5AEAyCKmT59ut956qz3++ONufHxaDQlROn7lypUtb9681qRJE5s/f36S66qexBNPPGHVqlVz66vI3owZM5Jcf/Dgwa4eRe/evUPuP3DggPXo0cOKFy9uBQoUsPbt29uWLVvS5P0AABDrCOQBAMgivv32W9uzZ481bNjQBdwjR4607du3n9Rraj76Pn362IABA2zhwoUuMG/VqlWSszn079/fXn75ZZcJsHTpUrvzzjvtqquusp9//jnRuj/++KNbt169eokeu/fee+2jjz6y999/37766iuXXaAx/gAAZAUE8gAAZBHnnHOOjR071v766y+74447bNKkSa7I3bFjx2zWrFkuyI/U0KFDrVu3bta1a1c3xn7MmDGWP39+GzduXNj133zzTXv44YetTZs2VrVqVevevbv7/fnnnw9Zb+/evdapUye3v0WLFg15bNeuXW6Mv7Z98cUXu4aJ8ePH2/fff2/z5s2L+D0AABBvCOQBAMhiTjnlFLvllltcD/2SJUvsvvvucynsmkrxP//5T4pf59ChQ266upYtWwbuy549u7s9d+7csM9RYT2l1AfTPPbal2BKm1f6f/Bre7RNpegHP1arVi2rWLFisttVcb/gBQCAeEUgDwBAFqbid88++6xt2LDBzSUfCaXla8750qVLh9yv26qOH47S7tWTvnLlykAmwJQpU1yWgEeZAkrTHzRoUNjX0Gvnzp3bihQpkuLt6rUKFy4cWCpUqBDRewUAIJYQyAMAAFf47sorr7QPP/wwXbczYsQIO+2001wPuoLxu+++26Xlqydf1q9fb7169bK33347Uc/9yejXr59LyfcWbQcAgHhFIA8AAFKlRIkSrgEgYbV43S5TpkzY55QsWdLNWb9v3z5bu3atLV++3FWd13h5L21ehfLOOussy5kzp1tUzO6FF15wvysDQK+ttP6dO3emeLt58uSxQoUKhSwAAMQrAnkAAJAq6lFXobnZs2cH7lO6vG43bdo02eeqt718+fJ25MgRmzx5srVr187d36JFCzduf9GiRYGlUaNGrvCdflfDgbaZK1eukO2uWLHC1q1bd8LtAgCQGeSM9g4AAID4pannunTp4oLts88+24YPH+5625UuL507d3YBuzfe/YcffrCNGzdagwYN3M+BAwe64P+BBx5wjxcsWNBOP/30RMX5NF+8d7/GuN96661u28WKFXO96z179nRBvCrzAwCQ2RHIAwCAVOvQoYNt27bNHnvsMVdoTgH6jBkzAgXw1EvujX+XAwcOuLnk//jjD5dSr6nnNCVdwsJ1JzJs2DD3uu3bt3cV6VVE76WXXkrz9wcAQCzK5vP5fNHeiVijKWnU2q9iOIyhAwDEAs5NaYvjCQCI53MTY+QBAAAAAIgjBPIAAAAAAMQRAnkAAAAAAOIIgTwAAAAAAHGEQB4AAAAAgDhCIA8AAAAAQBwhkAcAAAAAII4QyAMAAAAAEEcI5AEAAAAAiCME8gAAAAAAxBECeQAAAAAA4giBPAAAAAAAcYRAHgAAAACAOEIgDwAAAABAHCGQBwAAAAAgjhDIAwAAAAAQRwjkAQAAAACIIwTyAAAAAADEEQJ5AAAAAADiCIE8AAAAAABxhEAeAAAAAIA4QiAPAAAAAEAcIZAHAAAAACCOEMgDAAAAABBHoh7Ijxo1yipXrmx58+a1Jk2a2Pz585Nc97fffrP27du79bNly2bDhw9PtM7AgQPdY8FLrVq10vldAAAAAACQBQL5d9991/r06WMDBgywhQsXWv369a1Vq1a2devWsOvv37/fqlataoMHD7YyZcok+bp169a1v/76K7B8++236fguAAAAAADIIoH80KFDrVu3bta1a1erU6eOjRkzxvLnz2/jxo0Lu37jxo1tyJAhdv3111uePHmSfN2cOXO6QN9bSpQokY7vAgAAAACALBDIHzp0yBYsWGAtW7Y8vjPZs7vbc+fOPanXXrlypZUrV8713nfq1MnWrVuX7PoHDx603bt3hywAAAAAAMSiqAXy27dvt6NHj1rp0qVD7tftzZs3p/p1Nc5+woQJNmPGDBs9erStWbPGmjdvbnv27EnyOYMGDbLChQsHlgoVKqR6+wAAAAAAZOpid2mtdevWdu2111q9evXcePtPP/3Udu7cae+9916Sz+nXr5/t2rUrsKxfvz5D9xkAAAAAgJgP5DVuPUeOHLZly5aQ+3U7uUJ2kSpSpIjVqFHDVq1aleQ6Gm9fqFChkAUAAKT9DDSHDx+2J554wqpVq+bWV6FbZdEFU0adGuS9c3LTpk1t+vTpIetceOGFiWapufPOO9PtPQIAEEuiFsjnzp3bGjZsaLNnzw7cd+zYMXdbJ+y0snfvXlu9erWVLVs2zV4TAACkbgaa/v3728svv2wvvviiLV261AXfV111lf3888+BdU499VQ3Q41q6fz000928cUXW7t27dw0tMFUMDd4lppnn3023d8vAACW1VPrdeIfO3asvf7667Zs2TLr3r277du3z1Wxl86dO7u09+ACeYsWLXKLft+4caP7Pbi3vW/fvvbVV1/Zn3/+ad9//727OFDPf8eOHaPyHgEAyMwinYHmzTfftIcfftjatGnjitLq3K/fn3/++cA6bdu2dfeddtppLqvuqaeesgIFCti8efNCXkvbCZ6lhow6AEBWkTOaG+/QoYNt27bNHnvsMVfgrkGDBi69ziuAp2rzqmTv2bRpk5155pmB288995xbLrjgAvvyyy/dfRs2bHBB+44dO6xkyZJ23nnnuRO/fgcAAGk/A01wo/uJZqDRTDFKqQ+WL18++/bbb8Our8K477//vmvoT5ix9/bbb9tbb73lgngF/48++qgL7pParhYPM9QAmY/Pp1jA7IcfzNTup5///GNWvrwyffxLwt+LFTPLli3aew7EWSAvd999t1vC8YJzj8bf+fQ/NBmTJk1K0/0DAACRz0CzfPnysM9R2r168c8//3w3Tl5D6qZMmeJeJ9iSJUtc4H7gwAHXGz916lTX4++54YYbrFKlSm662cWLF9uDDz5oK1ascK+V1Aw1jz/+eJq8bwCxYd8+s59+Oh60a9m0KfF6CUblhFC7YlJBvvd7qVJmOXKk61sB4i+QBwAAWceIESNcKn6tWrVcgToF80rLT5iKX7NmTTd8TrPJfPDBB9alSxc3dM4L5m+//fbAumeccYarhdOiRQtXF0evmZCyBjSkL7hHnulmgfhx7JiZ2geDg/YlS/z3B1PAXb++pqT2LyqTpeBePfVaNm48/vv27WYHDphplG4ydbEtZ07/63iBfbigv1w51QBL98MABBDIAwCADJuBRkPdpk2b5nraNQxOPeoPPfSQGy+fsChu9erV3e8q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tQMAAJCGNJvQlVeazZlj9ssvZrfe6i96tnChWZcuZpUqmamTTlOVIfYdOGDWr59Z48ZmixaZFStm9uabZp98YlaxYrT3Dh41mvXqFT7zxbuvd++0T7NX8Owt6g1XIO3dXr58uRUsWNCmT59uDRs2tDx58ti3335rq1evtnbt2lnp0qWtQIEC1rhxY/tc1TKTSa3X67766qt21VVXuQD/tNNOsw8//DDJ1PoJEyZYkSJFbObMmVa7dm23ncsuu8w1LnjUqHDPPfe49TTd34MPPmhdunSxK/UFloQdO3ZYx44drXz58m4/zjjjDHtHYxiCHDt2zJ599lmrXr26e88VK1a0p556KvD4hg0b3GsUK1bMTjnlFGvUqJH9oOISpqKRNyfafu/eve1CtYz+j36/++673f0lSpSwVq1aufuHDh3q9kevWaFCBbvrrrts7969Ia/13Xffuedr34sWLeqe+88//9gbb7zhjsHBBC2t2pebbrrJYhGBPAAAOCmjRo1yF5158+a1Jk2a2HyVcU+Cptt54oknrFq1am79+vXr24wZM0LWGT16tNWrV8/1bGlp2rSpuxAOduDAAevRo4e78NIFavv27W3Lli0Wa+rV888jrrHyuo4tX95Mu/n44/4gUNeHP/0U7b1EUjQkQmn0KmKnAFDDJJYtM7vxRgVW0d47BPvmm8Q98QmDef0/1HoZ7aGHHrLBgwfbsmXL3Hebgss2bdrY7Nmz7eeff3YBdtu2bW3dunXJvs7jjz9u1113nS1evNg9v1OnTva3xvEkYf/+/fbcc8/Zm2++aV9//bV7/eAMgWeeecbefvttGz9+vAtwd+/ebdOmTUt2H/Tdq0aJTz75xH799VeX/q9AN/h7v1+/fu79Pvroo7Z06VKbOHGia7QQvfcLLrjANm7c6BoifvnlF3vggQdc8B+J119/3WUhaL/HjBnj7suePbu98MIL9ttvv7nHv/jiC/fankWLFlmLFi2sTp06NnfuXNeoouN+9OhRu/baa93P4MYRzfWu93nLLbdYTPIhkV27dqndzv0EACAWxOq5adKkSb7cuXP7xo0b5/vtt9983bp18xUpUsS3ZcuWsOs/8MADvnLlyvk++eQT3+rVq30vvfSSL2/evL6FCxcG1vnwww/d47///rtvxYoVvocfftiXK1cu36+//hpY58477/RVqFDBN3v2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",
      "text/plain": [
       "<Figure size 1200x400 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 绘制损失曲线\n",
    "loss = history.history['loss']\n",
    "val_loss = history.history['val_loss']\n",
    "epochs = range(1, len(loss) + 1)\n",
    "\n",
    "plt.figure(figsize=(12, 4))\n",
    "\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.plot(epochs, loss, 'bo', label='Training loss')\n",
    "plt.plot(epochs, val_loss, 'b', label='Validation loss')\n",
    "plt.title('Training and validation loss')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Loss')\n",
    "plt.legend()\n",
    "\n",
    "# 绘制精度曲线\n",
    "acc = history.history['accuracy']\n",
    "val_acc = history.history['val_accuracy']\n",
    "\n",
    "plt.subplot(1, 2, 2)\n",
    "plt.plot(epochs, acc, 'bo', label='Training accuracy')\n",
    "plt.plot(epochs, val_acc, 'b', label='Validation accuracy')\n",
    "plt.title('Training and validation accuracy')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.legend()\n",
    "\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\u001b[1m71/71\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 1ms/step\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(46,)"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "predictions = model.predict(x_test)\n",
    "predictions[0].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m2s\u001b[0m 29ms/step - accuracy: 0.3101 - loss: 3.2971 - val_accuracy: 0.5790 - val_loss: 1.7931\n",
      "Epoch 2/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.6210 - loss: 1.6454 - val_accuracy: 0.6810 - val_loss: 1.4129\n",
      "Epoch 3/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.7111 - loss: 1.2559 - val_accuracy: 0.7240 - val_loss: 1.2302\n",
      "Epoch 4/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.7624 - loss: 1.0260 - val_accuracy: 0.7460 - val_loss: 1.0924\n",
      "Epoch 5/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.8171 - loss: 0.8057 - val_accuracy: 0.7770 - val_loss: 0.9955\n",
      "Epoch 6/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.8492 - loss: 0.6619 - val_accuracy: 0.7960 - val_loss: 0.9784\n",
      "Epoch 7/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.8809 - loss: 0.5320 - val_accuracy: 0.8030 - val_loss: 0.9443\n",
      "Epoch 8/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 15ms/step - accuracy: 0.9054 - loss: 0.4187 - val_accuracy: 0.8080 - val_loss: 0.9385\n",
      "Epoch 9/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9225 - loss: 0.3485 - val_accuracy: 0.7790 - val_loss: 1.0529\n",
      "Epoch 10/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 17ms/step - accuracy: 0.9246 - loss: 0.3321 - val_accuracy: 0.8110 - val_loss: 0.9650\n",
      "Epoch 11/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 13ms/step - accuracy: 0.9437 - loss: 0.2532 - val_accuracy: 0.8110 - val_loss: 0.9777\n",
      "Epoch 12/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9449 - loss: 0.2307 - val_accuracy: 0.8040 - val_loss: 0.9743\n",
      "Epoch 13/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 13ms/step - accuracy: 0.9565 - loss: 0.1898 - val_accuracy: 0.8090 - val_loss: 0.9916\n",
      "Epoch 14/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9558 - loss: 0.1762 - val_accuracy: 0.8060 - val_loss: 1.0349\n",
      "Epoch 15/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 13ms/step - accuracy: 0.9579 - loss: 0.1651 - val_accuracy: 0.7970 - val_loss: 1.1114\n",
      "Epoch 16/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9614 - loss: 0.1441 - val_accuracy: 0.7850 - val_loss: 1.1451\n",
      "Epoch 17/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9604 - loss: 0.1423 - val_accuracy: 0.8050 - val_loss: 1.0256\n",
      "Epoch 18/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9585 - loss: 0.1263 - val_accuracy: 0.7990 - val_loss: 1.0708\n",
      "Epoch 19/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 16ms/step - accuracy: 0.9566 - loss: 0.1427 - val_accuracy: 0.7910 - val_loss: 1.1739\n",
      "Epoch 20/20\n",
      "\u001b[1m16/16\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 14ms/step - accuracy: 0.9611 - loss: 0.1203 - val_accuracy: 0.8030 - val_loss: 1.0719\n"
     ]
    }
   ],
   "source": [
    "model = keras.Sequential([\n",
    "    layers.Dense(64, activation=\"relu\"),\n",
    "    layers.Dense(128, activation=\"relu\"),\n",
    "    layers.Dense(128, activation=\"relu\"),\n",
    "    layers.Dense(46, activation=\"softmax\")#46个输出类别，softmax函数将输出转换为概率\n",
    "])\n",
    "model.compile(optimizer=\"rmsprop\",\n",
    "             loss=\"categorical_crossentropy\", #分类交叉熵损失函数\n",
    "             metrics=[\"accuracy\"])#准确率，用于监控训练过程\n",
    "history = model.fit(partial_x_train,\n",
    "                   partial_y_train,\n",
    "                   epochs=20,\n",
    "                   batch_size=512,\n",
    "                   validation_data=(x_val, y_val))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+kAAAGJCAYAAAD2VnIMAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAjBpJREFUeJzt3Qd4U9Ubx/GXvWSoyN4ORFREloAKTtw4UAQVEBUFRFD4q7hwo6IMEcEFuEBEAQeCIoILFMUBLhRFQIa4ANnr/p/fuaakbdqmbdKs7+d58rS5uUlubtKevOe85z2FPM/zDAAAAAAAxFzhWB8AAAAAAADwEaQDAAAAABAnCNIBAAAAAIgTBOkAAAAAAMQJgnQAAAAAAOIEQToAAAAAAHGCIB0AAAAAgDhBkA4AAAAAQJwgSAcAAAAAIE4QpCMldOvWzerUqZOn+955551WqFAhS2a//vqre43jx48v0OedO3eue179zO17Fa1j1nPrGAqaXodej14XACQz2uTs0SbHvk0GYo0gHTGlf+jhXIIbDCC/5s2b577orV+/PtaHAgBxgzYZsUCbDGRWNMQ2oMA8//zz6a4/99xzNmvWrEzbGzRokK/neeqpp2zPnj15uu9tt91mN998c76eHwXzXuXmC8Fdd93leucrVKiQ7rYlS5ZY4cL0XwJIPbTJyIg2GYgNgnTE1KWXXpru+ieffOK+EGTcntGWLVusdOnSYT9PsWLF8nyMRYsWdRcUjPy8V5FQokSJmD4/AMQKbTIyok1ODJs3b7YyZcrE+jAQQXRNIe61bdvWDj/8cFu4cKEdf/zx7ovALbfc4m577bXX7Mwzz7Rq1aq5f+QHHnig3XPPPbZ79+50j5FxTlVg7tTDDz9sTz75pLuf7t+sWTP77LPPcpz/puvXXnutTZs2zR2b7tuwYUObOXNmpuNXWmDTpk2tZMmS7nmeeOKJsOfUffjhh3bhhRdarVq13HPUrFnTrr/+etu6dWum17fPPvvYqlWr7Nxzz3W/H3DAATZgwIBM50LpZNq/fPnyrse6a9euYaWYff755+6Yn3322Uy3vf322+62N998011fvny59erVy+rXr2+lSpWy/fff372OcOZbh5r/Fu4xL1q0yO1Xr149d76rVKli3bt3t7/++ittH537//3vf+73unXrpqVvBo4t1Py3X375xR3/fvvt5z5/xxxzjE2fPj3kXL6XX37Z7rvvPqtRo4Y7hpNOOsmWLl1qefX444+7z5bef33Oe/funem1//TTT3bBBRe416vn1HNffPHFtmHDhrR99EX72GOPdedPnw+9N4G/IwAIF20ybXIqtMm5OWd67foc6Fj1udBzdenSxf7888+0fbZt2+Ze6yGHHOKOo2rVqnb++efbzz//nO54M04lCTXXP/D50n3POOMMK1u2rF1yySW5+ozKDz/8YBdddJH7bOo16rXeeuut7rY5c+a45506dWqm+02YMMHdNn/+/BzPI/KOrkgkBP1DP/30013goR79ypUru+36p6V/VDfccIP7+d5779kdd9xhGzdutCFDhuT4uPpH8++//9rVV1/t/uE89NBD7p+mGoCceo8/+ugjmzJlivsnrn+Qjz76qAuUVqxY4f6Zy5dffmmnnXaa+2esVC41znfffbf7hxiOyZMnuxGKnj17usdcsGCBjRw50n777Td3WzA9drt27axFixbui867775rjzzyiPsSovuL53nWvn17d+zXXHONS1nUP2A1sDnRlxo1tGrwMu4/adIk23fffd3zi75UKX1N75caKzUyo0ePdl/uvvvuu1yNuOTmmBWI6r27/PLL3ZeBb7/91n3h00+NCOk91vv7448/2sSJE23YsGFWsWJFd9+s3pPff//dWrVq5d6H6667zr0P+lJ0zjnn2CuvvGLnnXdeuv0feOABl5qnL2MKkvWZUuP56aefWm6pQdfn5uSTT3bvodL+dB51fj/++GP3Gd2xY4c779u3b7c+ffq4160vhvpypi8O+hKl13/WWWfZkUce6T5/arj1JUWPAQC5RZtMm5zsbXK452zTpk123HHH2ffff+86II4++mgXnL/++uvuc6HXo8+C2uDZs2e7x+vbt6/7nOv8fPPNN+4zkVu7du1y76863/X5ChxPuJ9RdaDouPV31aNHD9fBoKD/jTfecJ0aep0K8F988cVM51TbdMwtW7bM9XEjFzwgjvTu3dvL+LFs06aN2zZmzJhM+2/ZsiXTtquvvtorXbq0t23btrRtXbt29WrXrp12fdmyZe4x999/f+/vv/9O2/7aa6+57W+88UbatkGDBmU6Jl0vXry4t3Tp0rRtX3/9tds+cuTItG1nn322O5ZVq1albfvpp5+8okWLZnrMUEK9vsGDB3uFChXy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R3P1WKoMv3DhQjv55JPTtil9XteVVh+OZ555xi6++GIrU6ZMlvsoFV9L2wQuibye+333mT3+uD/t7fnn/WXXAACpI08j6QrO//zzTxfw7rvvvmnbVdldPd3RosBcve8qXKPg++mnn3bH8umnn9rRRx+dZaN91113Wbzp02fvaPrLL+9dRgUAgFhTKnrAQQcdZD/88IP9/fffrs0PVHgPl74vKH2+siZVB9F1PW5ONHdd6e4K1LMzcOBAl1IfoO8oiRioP/202e23+7+rP+Sii2J9RACAhBhJ37p1qwuSAwH68uXLbfjw4W6eWjTnh9evX9+uvvpqa9KkibVq1cqlyennsGHDsm20tWB84KLl4+JBVqPpAADEkurOFC1a1AXGGVPQcxugR4KC8yOOOCLHTD3VyilXrly6S6J5/XWzq6/2f7/lFn96HAAg9eQpSG/fvr0999xz7vf169e7+WqPPPKInXvuuTZ69GgrSGq0ly5dmpCNtkbT1c+hgYTJk2N9NAAAaO3tYlarVq2IrYWuwnMq+vb777+n267rVapUybHArOajX3HFFZbsNHuvY0czzTLo3t3s3ntjfUQAgIQK0lWZVXPT5JVXXnEpaxpNV+Ce27lq+fXVV1+5NPhEVL682fXX+78zmg4AiBe33nqr3XLLLS7FPb9UcE4ZcLNnz07bpvnuut6yZcts7zt58mSXuXepypwnsW+/NTv7bH/JtbPOMnviiczLsgIAUkee5qRv2bIlbWmWd955x84//3xXBOaYY45xwXq4Nm3alG4UXIVpFHQrpU69+EpVX7VqVdqovVLqVWlW1eW3bdvm5qS/99577hgSlaq3Dh1q9v33/nJr6kUHACCWHnvsMdc+V6tWzS27lrFgmzrrc0Nzxbt27epqyigDTu25RskD1d67dOli1atXd3VkMqa6K0svNyvHJBrNwjvtNLN//jFTn4VWfSmap29nAIBkkadmQEVkpk2bZuedd569/fbbdv1/w8Fa7zQ36eSff/65nXDCCWnXAwVf1JCPHz/erY26YsWKdBVi+/fv7wJ3Fag78sgj3TrtwY+RqKPpgwb5o+laXaZwnvIbAACIDAXGkdSxY0f7448/7I477rC1a9e6VVpmzpyZVkxObb06+4Opzs1HH32U0B3xOVGiggL0334za9DA7I03zKJYfxcAkCAKeZ5W48wdpbh37tzZzVc78cQT3Vrpoh7wDz74wGbMmGHxStVetTSLisjFy/z09evN6tb1f6oHnUquAJBa4rFtSnTxfk63bjU75RR/Lnr16mbz5pnVqhXrowIAxEO7lKcx2w4dOrheb42EayQ94KSTTsq20jpCq1DBrF8//3eNpv+3NC0AAEhCu3aZXXyxH6DrO8DMmQToAIC98pxYrYqsjRs3ttWrV9tvytP6r9L6oYcemteHTGl9+/qp7yoeo7npAADEilLPVZE9qwvyv7qLllsrUcL/efjhsT4iAEDCz0lXVdZ7773XLbum4m+iQnKaL66KsBnnlSH80fS77jLr1Uvz/s2OPjrWRwUASEVTp07NtHb6l19+ac8++6zdpYYKeabO+DFj/PozL71k9t9iOQAA5C9IVyCuiqsPPPCAtW7d2m1TcZc777zTVV2/77778vKwKW/AADNN51+wwOzEE/30t2OOifVRAQBSTfv27UNOddPqKpMmTUqJdcujZdw4/+c556hAX6yPBgCQNIXjtCTLmDFj7By1MEFee+0169Wrl6u+Hq/ivZDMxo1mZ56pTg+zffYxmz7d7PjjY31UAIBUbpsCfvnlF7eySiCLLp7F4zndudOsRg2thqPvTH6gDgBIDRujXTju77//Djn3XNt0G/JO75dG0DWSru9AWprl3XdjfVQAgFS3detWe/TRR9165sgbZcspQNfKc6efHuujAQDEqzwF6Y0aNbLHHnss03ZtUw878qdMGbM33zQ74wx/iZazzvKvAwBQEPbdd1/bb7/90i66rtozY8eOtSFDhsT68BLW2LH+z8suMytWLNZHAwBIqjnpDz30kJ155pn27rvvWsuWLd22+fPn28qVK+2tt96K9DGmpFKlzKZMMevUSQV8zM4/32ziRLMLLoj1kQEAkp2WUy1UqFDadRWEPeCAA6xFixYuYEfu/f67P4VNLr881kcDAEi6IL1Nmzb2448/2qhRo+yHH35w284//3zr0aOHq/p+HKVKI0JLs0yaZNali18BtmNHs+eeM+vcOdZHBgBIZt26dYv1ISSdF17w10dv0cLssMNifTQAgKQL0gPF4zJWcf/6669d1fcnn3wyEscG89Ph1LCXLGk2frzZpZeabdtm1r17rI8MAJCsxo0bZ/vss49deOGF6bZPnjzZtmzZYl27do3ZsSUilegNVHVnFB0AkBMW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maeGcCgQb9/er+KuInGag64U9/yMoGvZtkg+HgAkArXDXbt2taZNm1rz5s1t+PDhtnnzZjfVTZTaXr16ddexLnfffbcdc8wxdtBBB7kv80OGDHH1Z6688soYvxIA+REI0CtVquSmt2oKK5As9uzZY6tXr3Y102rVqpWvz3fRZE+BI/0N+aEAum3byDzWlCmhR+aVWs/IPIBk1rFjR/vjjz/sjjvucF/SNdd85syZaZl0K1asSJce+M8//7h6Ndp33333dSPx8+bNc7VrACQmZcQEAvT9998/1ocDRIXqpyhQ37Vrl4tTE7JwXHAKXEAgBS54tDycFLiqlNpGHFOArjnuGQsTr1rlb9ftAJDMlNqu0XDVifn000/dkqsBc+fOdUusBgwbNixtXwXq06dPdx3yABJXYA66RtCBZFX8vzR3xagJXd1dKXBPPfWUPfvss/b9999bz549M6XABReWUwrcO++8Y7/88otbsu3SSy8lBQ5xTX+jGkEPLkAXENjWr5+/HwAAQDIjxR3JrFCEPt8xn5NOChySneagZ7O0rwvUtVKQ9otUaj0AAACAxBTzID2QApdVhVelwAVTCpwuQKJQkbhI7gcAAJDKkqEQb506daxfv37uEg7FRCeccIIbsKxQoULUjw+xFfN0dyDZhVsugbIKAAAA2VMdnzp1zE44waxzZ/+nrkervo/Sl7O73HnnnXl63M8++8x69OgR9v5a0UpVw8uXL5+n50NiiYuRdCCZqXdXVdxVJC7UvHRNXdHt2g8AAADZF+LN+H0qUIj3lVciv2KOAuOASZMmuSm6S5YsSdu2zz77pFsHXgXDihYtGlYV8NwWJAt39atks2PHjnyvO55oGEkHokzpV1pmTTLWkghcHz488dK0AAAAkr0QrwLjwEWj2Bo9D1z/4YcfrGzZsjZjxgxXJ0vLPn/00Uf2888/W/v27V2NLQXxzZo1s3fffTdTuvtwfQH8jx736aeftvPOO89VwD/44IPt9ddfT5furn20jJ1oRQylvb/99tvWoEED9zynnXZauk4FLQN23XXXuf207N1NN91kXbt2tXPPPTfL1/vXX39Zp06drHr16u44jjjiCJs4cWK6fbQa10MPPWQHHXSQe81aE/y+++5Lu/23335zj7HffvtZmTJlrGnTpm5VD+nWrVum51fKf9ugwkxt27Z1U6G1XUt2t2vXzm0fOnSoOx49Zs2aNa1Xr162adOmdI/18ccfu/vr2FW/TPfVFIHnnnvOnQOtGhJMx3LZZZdZvCFIBwqAenXVu1u9evrtGkGPRq8vAABAqhbiLWg333yzPfDAA26lqiOPPNIFjmeccYZbVvrLL790wfPZZ5/tCmJn56677rKLLrrIFi1a5O5/ySWX2N9//53l/lu2bLGHH37Ynn/+efvggw/c4w8YMCDt9gcffNBefPFFGzdunAteN27caNOmTcv2GLZt2+Y6HLT05TfffONS8hXELliwIG0frbyl13v77bfbd999ZxMmTEgr+q3X3qZNG1u1apXrZPj666/txhtvdIF9bjz77LNu9FzHPWbMGLdNxcQfffRR+/bbb93t7733nnvsgK+++spOOukkV1B8/vz5rsNE513ZDRdeeKH7GdzxsW7dOvc6u3fvbnHHSzEbNmxQX5v7CRS0Xbs8b84cz5swwf+p6/H0eABig7Yp8jinQHzZunWr991337mfeaHvOn4onv1F+0XLuHHjvPLly6ddnzNnjvs/M23atBzv27BhQ2/kyJFp12vXru0NGzYs7boe57bbbku7vmnTJrdtxowZ6Z7rn3/+STsWXV+6dGnafUaNGuVVrlw57bp+HzJkSNr1Xbt2ebVq1fLat2+fq9d95plnev3793e/b9y40StRooT31FNPhdz3iSee8MqWLev99ddfIW/v2rVrpufv27ev16ZNm7Trbdq08Ro3bpzjcU2ePNnbf//906536tTJa926dZb79+zZ0zv99NPTrj/yyCNevXr1vD179ngF8TnPTbvEnHSgACmlPVLLrGleltK+gnuVNTKv1HpG5gEAQDKJ50K8SucOptFkFZTTKK3Sz5V2vnXr1hxH0jUKH6CU7nLlyrnR3qwopfvAAw9Mu161atW0/Tds2GC///67NW/ePO32IkWKuFHy7Ea1Ndp8//3328svv+xGwzUfXCniei5RtoCua8Q6FI1mN27c2KW650eTJk0ybdOUgcGDB7tpBsoK0HnVyL8yCnR8em6NmGdFy3hr6oFel9L5NWVA6feRWts8kkh3BxK4cErGtK9A4ZRoVTgFAACIZSHerOIpba9ZMzaFeBVQB1PK+dSpU12w++GHH7rgUXOpFfBmp1ixYumuK3jMLqAOtb8/KJ93Q4YMsREjRrj563PmzHHHrnndgWMvVapUtvfP6XalrGc8xp07d+Z4Tn/99Vc766yzXEfGq6++agsXLrRRo0a528I9NnUeNGrUyM1P1/2VNq8gPR4RpAMJJlaFUwAAAGIlkQrxah61gj8VgVNwriJzCjILkorcaZ64lnoLHiX/4osvcjx2Fb279NJLXUBbr149+/HHH9NuV0E7BcOabx+KgmgF9lnNpVdV++DidqL9c7Jw4ULXYfHII4/YMcccY4cccoitXr0603NndVwBV155pRtB1zz9k08+2RWgi0cE6UCCiXbhFAX3c+eaqZCnfhLsAwCAeJAohXgVyE6ZMsUFnyqc1rlz51wXTouEPn36uPTw1157zS0b17dvX1fpPLv0bh37rFmzbN68eS61/eqrr3Zp8wElS5Z0o+wq2KYRaVWy/+STT+yZZ55xt6uquzolVDVdAf8vv/ziRr5VyE1OPPFE+/zzz919f/rpJxs0aJArUJeTgw46yI24jxw50j2miuUFCsoFF7RTp4Sqvqv4ntLiR48ebX/++WfaPnovVH3+qaeeis+Ccf8hSAcSTIbOx3zvF0xp8nXqmJ1wgv6J+T91nfR5AAAQDxSIa1B6zhyzCRP8n8uWxU+AHlgqTMt/tWrVylUXV7r40UcfXeDHoWBaQXOXLl2sZcuWbpk2HYsC7azcdttt7li1n5YyCwTcwVTVvX///m7NeC3/1rFjx7S58KrI/s4771ilSpVchXplEqgSvObDix5X91eQr/nh//77rzu+nDRq1MidV1WsP/zww13VenVABNPoup5bHSOai6/XrA6K4HXrlWFwwQUXuHOR3VJ0sVZI1eMshajIgN4cFVNQMQYg0Wh0W8FzTtRo5aZIXWCee8b/CIHO1njqoQaSDW1T5HFOgfiiAl/Lli2zunXrZhskIno0mq+gWsu83XPPPZaqTjrpJGvYsKFbzq0gP+e5aZcYSQcSTDQKpzDPHQAAILksX77cpXVrTvnixYutZ8+eLoBUyncq+ueff1xBv7lz51rv3r0tnhGkAwkmGoVToj3PHQAAAAVLldRVJE1p5a1bt3aBupYx02h6KmrcuLEr6KeU+fr161s8Y510IIELp4RaJ10Bem7T0qM5z12j7wrudV+tXaoR/niovAoAAJDMVLlcxdvgK+gK+/lBkA4kKAXi7dtHJgDWfSO5X/A891AdCcoEYH47AAAAkBlBOpDAFJDnpjhcTvPcV60KPS9dafS6PTfz3LMqRKfn0Pa8FqJjZB4AAADJjDnpACI+zz1ahehYIg4AAADJjiAdQLp57tWrp9+uEfTcjnpHoxBdYGQ+4+MGRuYJ1AEAAJAMSHcHEPF57pEuRJfTyLxG+zUyr2Mn9R0AAACJjCAdQMTnuUe6EF1uRuYjMUcfAAAAiBXS3QFEXKAQXcb57QHaXrNm+IXoor1E3Ny5ZhMn+j9zO08eAAAgJ23btrV+Svv7T506dWy4Cv5ko1ChQjZt2rR8P3ekHgcFhyAdQNwXoovmEnEUogMAAFk5++yz7bTTTgt524cffugC4EWLFuX6cT/77DPr0aOHRdKdd95pRx11VKbta9assdNPPz2iz4XoIkgHEPeF6CI9Mh/NQnTRGJlntB8AgNi44oorbNasWfZbiHl348aNs6ZNm9qRRx6Z68c94IADrHTp0lYQqlSpYiVKlLBUs2PHDktUBOkAokaB+K+/ms2ZYzZhgv9z2bLcr4+eykvEMdoPAEhWanM3b47NJdR3gFDOOussF1CPHz8+3fZNmzbZ5MmTXRD/119/WadOnax69eou8D7iiCNsonrWs5Ex3f2nn36y448/3kqWLGmHHXaY6xjI6KabbrJDDjnEPUe9evXs9ttvt507d7rbdHx33XWXff311250X5fAMWdMd1+8eLGdeOKJVqpUKdt///3diL5eT0C3bt3s3HPPtYcfftiqVq3q9undu3fac4Xy888/W/v27a1y5cq2zz77WLNmzezdd99Nt8/27dvda6hZs6brNDjooIPsmWeeSbv922+/dee7XLlyVrZsWTvuuOPc44aaLiA6Rh1r8Dm95557rEuXLu4xApkK2Z23gDfeeMMds85/xYoV7bzzznPb7777bjv88MMzvV5lLOhxooXCcQDivhBd8Mi8guvgzmyNsKuNi9YSceEee2BkPmOjHxiZz232QLQeEwCAeLFli9k++8TmuRWTlimT835FixZ1QZ8C3ltvvdUFvKIAfffu3S44V4DbpEkTFwwqOJw+fbpddtllduCBB1rz5s1zfI49e/bY+eef7wLcTz/91DZs2JApIBUFrjqOatWquUD7qquucttuvPFG69ixo33zzTc2c+bMtOC4fPnymR5j8+bN1q5dO2vZsqVLuV+3bp1deeWVdu2116briJgzZ44L0PVz6dKl7vEVmOo5Q5/PTXbGGWfYfffd5wLw5557zk0VWLJkidWqVcvto/M4f/58e/TRR61Ro0a2bNky+/PPP91tq1atcp0UCsbfe+89dx4//vhj27Vrl+WGOhbuuOMOGzRoUFjnTfR+KSjX+6vj1gj8W2+95W7r3r276/zQuVIQL19++aWb4jAlmiMmXorZsGGDvu66nwASz65dnjdnjudNmOD/1PXc0n390Df7i/YL95hq1Mj6cQoV8ryaNXN3rNF4zEiew2g+XiqibYo8zikQX7Zu3ep999137mfApk3htcfRuOi5w/X999+7/ydz1Mj957jjjvMuvfTSLO9z5plnev3790+73qZNG69v375p12vXru0NGzbM/f722297RYsW9VatWpV2+4wZM9xzTp06NcvnGDJkiNekSZO064MGDfIaNWqUab/gx3nyySe9fffd19sUdAKmT5/uFS5c2Fu7dq273rVrV3d8u4Ia9AsvvNDr2LGjlxsNGzb0Ro4c6X5fsmSJO45Zs2aF3HfgwIFe3bp1vR07doS8PeP5k/bt27tjDdAxn3vuuTkeV8bz1rJlS++SSy7Jcv/TTz/d69mzZ9r1Pn36eG3btg37c56XdomRdAAJJVWWiIvWsnPq9A2VjaDpBHkZlY/044mmGeh1qVq/3gPVGgh3KkNBPiYAIH80JTsoy7rAnztchx56qLVq1crGjh3rRno1sqyicUqFFo2o33///fbyyy+7EWGNxCq1O9w5599//71LAddIb4BGujOaNGmSG4VWCrhGrjXKrBHn3NBzaRS7TFAaQevWrd1ovka9NZovDRs2tCJBDaVG1TUKnRUdjwrXaVRahep0bFu3brUVK1a427/66iv3eG3atAl5f92u9PZixYpZfqhGQG7Pm547qwwB0W0aUR86dKgVLlzYJkyYYMOGDbNoIkgHkHICheiUNh5qTpoy2XR7LJeIi8ZjRjp9Plop/pEO+hOlIwHxifcaiB61t+GknMcDzT3v06ePjRo1yhWMUyp7IOAcMmSIjRgxws0x13x0BcBKV49k4TKliV9yySUu9Vrp6kplf+mll+yRRx6xaMgYLCvNX4F8VgYMGODm0SvdXHPNNd+9Q4cOaedA17OT0+2FCxdWBni6baHmyAd3PoR73nJ6bqXtK4V/6tSpVrx4cfe8em3RROE4ACknEZaIi/RjRrpYXjSK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sryOZHotyfI6kum1JMvriEVbT3V3AAAAAADiBEE6AAAAAABxgiA9QWmZmUGDBiX8cjPJ8jqE1xJ/kuV1JNNrSZbXkWyvBfEpmT5jyfJakuV1JNNrSZbXkUyvJVleRyxfSyEvGdd7AQAAAAAgATGSDgAAAABAnCBIBwAAAAAgThCkAwAAAAAQJwjSAQAAAACIEwTpcWjw4MHWrFkzK1u2rFWqVMnOPfdcW7JkSbb3GT9+vBUqVCjdpWTJkhZrd955Z6bjOvTQQ7O9z+TJk90+Ov4jjjjC3nrrLYu1OnXqZHoduvTu3Tvu348PPvjAzj77bKtWrZo7jmnTpqW7XbUj77jjDqtataqVKlXKTj75ZPvpp59yfNxRo0a586LX1aJFC1uwYEHMXsfOnTvtpptucp+XMmXKuH26dOliq1evjvjnM9qvRbp165bpuE477bSEek8k1N+MLkOGDImr9ySc/7nbtm1zf+/777+/7bPPPnbBBRfY77//nu3j5vVvC6mBtp62PpKSpa1PpvY+Wdp6ob3/vcDbe4L0OPT++++7D8cnn3xis2bNcv+QTj31VNu8eXO29ytXrpytWbMm7bJ8+XKLBw0bNkx3XB999FGW+86bN886depkV1xxhX355Zfuj0eXb775xmLps88+S/ca9L7IhRdeGPfvhz43jRo1cv/UQ3nooYfs0UcftTFjxtinn37qGr127dq5f1JZmTRpkt1www1uSYovvvjCPb7us27dupi8ji1btrjjuP32293PKVOmuH+655xzTkQ/nwX1noga6uDjmjhxYraPGW/viQQfvy5jx451jbAavHh6T8L5n3v99dfbG2+84QIL7a8vhOeff362j5uXvy2kDtp62vpISpa2Ppna+2Rp64X2/vyCb++1BBvi27p167RMnvf+++9nuc+4ceO88uXLe/Fm0KBBXqNGjcLe/6KLLvLOPPPMdNtatGjhXX311V486du3r3fggQd6e/bsSaj3Q5+jqVOnpl3X8VepUsUbMmRI2rb169d7JUqU8CZOnJjl4zRv3tzr3bt32vXdu3d71apV8wYPHuzF4nWEsmDBArff8uXLI/b5LKjX0rVrV699+/a5epxEeE/0mk488cRs94mH9yTj/1z9TRQrVsybPHly2j7ff/+922f+/PkhHyOvf1tIXbT1tPWRkixtfTK198nS1gvtfcG094ykJ4ANGza4n/vtt1+2+23atMlq165tNWvWtPbt29u3335r8UDpHkqPqVevnl1yySW2YsWKLPedP3++SxEJpp4obY8XO3bssBdeeMG6d+/uegkT7f0ItmzZMlu7dm26c16+fHmXPpXVOdfrX7hwYbr7FC5c2F2Pp/dJfzd6fypUqBCxz2dBmjt3rkvFql+/vvXs2dP++uuvLPdNhPdEqWLTp093I2c5ifV7kvF/rs6tetuDz69S8mrVqpXl+c3L3xZSG209bX20JHNbn+jtfbK19UJ7bxFp7wnS49yePXusX79+1rp1azv88MOz3E9/3Eotee2111yjovu1atXKfvvtN4slfUA1Z2vmzJk2evRo90E+7rjj7N9//w25vz7klStXTrdN17U9Xmgezvr1691cokR7PzIKnNfcnPM///zTdu/eHdfvk9KLNGdN6ZRKRYzU57OgKP3tueees9mzZ9uDDz7o0q1OP/10d94T9T159tln3RywnFLGYv2ehPqfq3NYvHjxTF8Aszu/efnbQuqirY+/vw3a+vhvVxK9vU/Gtl5o7yPzvhTN8z1RIDRvQnO0cpqj0bJlS3cJUCPRoEEDe+KJJ+yee+6xWNE/m4AjjzzS/UGqx/nll18Oq4ctHj3zzDPudannL9Hej1SgHtCLLrrIFfHQP/1E/HxefPHFab+rOI6O7cADD3Q97ieddJIlIn2RVS95TkWVYv2ehPs/F4gk2vr4Q1sf/xK9vU/Gtl5o7yODkfQ4du2119qbb75pc+bMsRo1auTqvsWKFbPGjRvb0qVLLZ6oZ+qQQw7J8riqVKmSqYKirmt7PFBBmHfffdeuvPLKpHg/Auc1N+e8YsWKVqRIkbh8nwINtt4nFQTJrlc9L5/PWFEamM57VscVz++JfPjhh66wT27/bgr6Pcnqf67OodIMNaoW7vnNy98WUhNtffz9bdDWx3+7koztfaK39UJ7H7n3hSA9DqlHUB+eqVOn2nvvvWd169bN9WMoHWbx4sVuKYB4orlbP//8c5bHpR5ppf0E0z/f4J7qWBo3bpybO3TmmWcmxfuhz5b+gQSf840bN7rKlFmdc6UBNWnSJN19lDKk67F8nwINtuY36cuVls6I9OczVpQ6qXlqWR1XvL4nwSNSOj5Vho3H9ySn/7k6dn35Dj6/+hKiuXNZnd+8/G0htdDW09YXlGRq65O5vU/0tl5o7yPY3ue55ByipmfPnq5a6Ny5c701a9akXbZs2ZK2z2WXXebdfPPNadfvuusu7+233/Z+/vlnb+HChd7FF1/slSxZ0vv222+9WOrfv797HcuWLfM+/vhj7+STT/YqVqzoqimGeh3ap2jRot7DDz/sqimq8qOqLC5evNiLNVXQrFWrlnfTTTdlui2e349///3X+/LLL91Ff/JDhw51vweqoD7wwANehQoVvNdee81btGiRq8hZt25db+vWrWmPoQqdI0eOTLv+0ksvuaqV48eP97777juvR48e7jHWrl0bk9exY8cO75xzzvFq1KjhffXVV+n+brZv357l68jp8xmL16LbBgwY4KqI6rjeffdd7+ijj/YOPvhgb9u2bQnzngRs2LDBK126tDd69OiQjxEP70k4/3OvueYa9/f/3nvveZ9//rnXsmVLdwlWv359b8qUKWnXw/nbQuqiraetj6RkaeuTqb1PlrY+p9cSQHsf2faeID0O6cMf6qKlPgLatGnjlm4I6Nevn/tAFS9e3KtcubJ3xhlneF988YUXax07dvSqVq3qjqt69eru+tKlS7N8HfLyyy97hxxyiLtPw4YNvenTp3vxQA2x3oclS5Zkui2e3485c+aE/DwFjldLR9x+++3uOPWP/6STTsr0GmvXru2+RAXTP9rAa9SSIJ988knMXof+wWf1d6P7ZfU6cvp8xuK1qKE49dRTvQMOOMB9adUxX3XVVZka4Hh/TwKeeOIJr1SpUm45klDi4T0J53+uGtpevXp5++67r/sSct5557mGPePjBN8nnL8tpC7aetr6SEqWtj6Z2vtkaetzei0BtPe3R7S9L/TfEwEAAAAAgBhjTjoAAAAAAHGCIB0AAAAAgDhBkA4AAAAAQJwgSAcAAAAAIE4QpAMAAAAAECcI0gEAAAAAiBME6QAAAAAAxAmCdAAAAAAA4gRBOoCoK1SokE2bNi3WhwEAAKKEth6IHIJ0IMl169bNNZwZL6eddlqsDw0AAEQAbT2QXIrG+gAARJ8a6XHjxqXbVqJEiZgdDwAAiCzaeiB5MJIOpAA10lWqVEl32Xfffd1t6mkfPXq0nX766VaqVCmrV6+evfLKK+nuv3jxYjvxxBPd7fvvv7/16NHDNm3alG6fsWPHWsOGDd1zVa1a1a699tp0t//555923nnnWenSpe3ggw+2119/Pe22f/75xy655BI74IAD3HPo9oxfNAAAQNZo64HkQZAOwG6//Xa74IIL7Ouvv3YN6MUXX2zff/+9u23z5s3Wrl0719B/9tlnNnnyZHv33XfTNcxq+Hv37u0adDXyapQPOuigdM9x11132UUXXWSLFi2yM844wz3P33//nfb83333nc2YMcM9rx6vYsWKBXwWAABIXrT1QALxACS1rl27ekWKFPHKlCmT7nLfffe52/Vv4Jprrkl3nxYtWng9e/Z0vz/55JPevvvu623atCnt9unTp3uFCxf21q5d665Xq1bNu/XWW7M8Bj3HbbfdlnZdj6VtM2bMcNfPPvts7/LLL4/wKwcAIDXQ1gPJhTnpQAo44YQTXI91sP322y/t95YtW6a7Tde/+uor97t6uxs1amRlypRJu71169a2Z88eW7JkiUuhW716tZ100knZHsORRx6Z9rseq1y5crZu3Tp3vWfPnq53/4svvrBTTz3Vzj33XGvVqlU+XzUAAKmDth5IHgTpQApQQ5kxJS1SNK8sHMWKFUt3XQ2+Gn/RHLnly5fbW2+9ZbNmzXJfApRS9/DDD0flmAEASDa09UDyYE46APvkk08yXW/QoIH7XT81f03z1QI+/vhjK1y4sNWvX9/Kli1rderUsdmzZ+frGFRIpmvXrvbCCy/Y8OHD7cknn8zX4wEAgL1o64HEwUg6kAK2b99ua9euTbetaNGiaQVbVCCmadOmduyxx9qLL75oCxYssGeeecbdpqIvgwYNco3qnXfeaX/88Yf16dPHLrvsMqtcubLbR9uvueYaq1Spkusp//fff13jrv3Ccccdd1iTJk1cxVgd65tvvpn2xQEAAOSMth5IHgTpQAqYOXOmWyolmHrGf/jhh7RqrC+99JL16tXL7Tdx4kQ77LDD3G1aRuXtt9+2vn37WrNmzdx1zSkbOnRo2mOpUd+2bZsNGzbMBgwY4L4QdOjQIezjK168uA0cONB+/fVXl1J33HHHueMBAADhoa0HkkchVY+L9UEAiB3NF5s6daor4AIAAJIPbT2QWJiTDgAAAABAnCBIBwAAAAAgTpDuDgAAAABAnGAkHQAAAACAOEGQDgAAAABAnCBIBwAAAAAgThCkAwAAAAAQJwjSAQAAAACIEwTpAAAAAADECYJ0AAAAAADiBEE6AAAAAAAWH/4Pv8UWp8yTd94AAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 1200x400 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制损失曲线\n",
    "loss = history.history['loss']\n",
    "val_loss = history.history['val_loss']\n",
    "epochs = range(1, len(loss) + 1)\n",
    "\n",
    "plt.figure(figsize=(12, 4))\n",
    "\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.plot(epochs, loss, 'bo', label='Training loss')\n",
    "plt.plot(epochs, val_loss, 'b', label='Validation loss')\n",
    "plt.title('Training and validation loss')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Loss')\n",
    "plt.legend()\n",
    "\n",
    "# 绘制精度曲线\n",
    "acc = history.history['accuracy']\n",
    "val_acc = history.history['val_accuracy']\n",
    "\n",
    "plt.subplot(1, 2, 2)\n",
    "plt.plot(epochs, acc, 'bo', label='Training accuracy')\n",
    "plt.plot(epochs, val_acc, 'b', label='Validation accuracy')\n",
    "plt.title('Training and validation accuracy')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.legend()\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
